package com.ruoyi.system.domain.bo;

import com.ruoyi.common.core.validate.AddGroup;
import com.ruoyi.common.core.validate.EditGroup;
import lombok.Data;
import lombok.EqualsAndHashCode;
import javax.validation.constraints.*;

import java.util.Date;

import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 数据帧业务对象 data_frame
 *
 * @author ruoyi
 * @date 2024-06-30
 */

@Data
@EqualsAndHashCode(callSuper = true)
public class DataFrameBo extends BaseEntity {

    /**
     * 数据帧id
     */
    @NotNull(message = "数据帧id不能为空", groups = { EditGroup.class })
    private Integer dataFrameId;

    /**
     * 数据帧长度，数据包个数
     */
    @NotNull(message = "数据帧长度，数据包个数不能为空", groups = { AddGroup.class, EditGroup.class })
    private Long length;

    /**
     * 优先级
     */
    @NotNull(message = "优先级不能为空", groups = { AddGroup.class, EditGroup.class })
    private Long priority;

    /**
     * crc校验码
     */
    @NotBlank(message = "crc校验码不能为空", groups = { AddGroup.class, EditGroup.class })
    private String crcCode;

    /**
     * 输入端口号
     */
    @NotNull(message = "输入端口号不能为空", groups = { AddGroup.class, EditGroup.class })
    private Long inport;

    /**
     * 发送时间
     */
    @NotNull(message = "发送时间不能为空", groups = { EditGroup.class })
    private Date sendTime;

    /**
     * 发送状态
     */
    @NotNull(message = "发送状态不能为空", groups = { AddGroup.class, EditGroup.class })
    private Long sendState;

    /**
     * 文件id
     */
    @NotNull(message = "文件id不能为空", groups = { AddGroup.class, EditGroup.class })
    private Long documentId;

    /**
     * 分包序号
     */
    @NotNull(message = "分包序号不能为空", groups = { AddGroup.class, EditGroup.class })
    private Long sequenceNumber;


}
